home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / SourceCode / MiscKit1.7.1 / MiscKitArchive.mbox / mbox / 000061_kane@sonata.cc.purdue.edu_Sat Oct 2 00:06 MDT 1993.msg < prev    next >
Internet Message Format  |  1994-10-30  |  3KB

  1. Received: from yvax2.byu.edu by maine.et.byu.edu; Sat, 2 Oct 93 00:06:16 -0600
  2. Return-Path: <kane@sonata.cc.purdue.edu>
  3. Received: from DIRECTORY-DAEMON by yvax.byu.edu (PMDF V4.2-13 #4169) id
  4.  <01H3M8161VKG94IGWU@yvax.byu.edu>; Sat, 2 Oct 1993 00:04:16 MDT
  5. Received: from alaska.et.byu.edu by yvax.byu.edu (PMDF V4.2-13 #4169) id
  6.  <01H3M812E9CG936GS5@yvax.byu.edu>; Sat, 2 Oct 1993 00:04:11 MDT
  7. Received: from yvax.byu.edu by alaska.et.byu.edu; Sat, 2 Oct 93 00:05:54 -0600
  8. Received: from DIRECTORY-DAEMON by yvax.byu.edu (PMDF V4.2-13 #4169) id
  9.  <01H3M80PSEM8936CGQ@yvax.byu.edu>; Sat, 2 Oct 1993 00:03:54 MDT
  10. Received: from sonata.cc.purdue.edu by yvax.byu.edu (PMDF V4.2-13 #4169) id
  11.  <01H3M80KN9VK9367AS@yvax.byu.edu>; Sat, 2 Oct 1993 00:03:47 MDT
  12. Received: from cantata.cc.purdue.edu by sonata.cc.purdue.edu (5.61/Purdue_CC)
  13.  id AA01813; Sat, 2 Oct 93 01:03:41 -0500
  14. Received: by cantata.cc.purdue.edu (NX5.67d/NX3.0X) id AA02262; Sat,
  15.  2 Oct 93 01:03:39 -0500
  16. Received: by NeXT.Mailer (1.95)
  17. Received: by NeXT Mailer (1.95)
  18. Date: Sat, 02 Oct 1993 01:03:39 -0500
  19. From: kane@sonata.cc.purdue.edu
  20. Subject: Beta testers wanted: fast string-search algorithms
  21. To: misckit@byu.edu
  22. Message-Id: <9310020603.AA01813@sonata.cc.purdue.edu>
  23. Content-Transfer-Encoding: 7BIT
  24. Status: RO
  25.  
  26. I am putting the final touches on an implementation of a very
  27. fast string searching algorithm (a variation on the Tuned
  28. Boyer-Moore algorithm due to Hume & Sunday) and would like
  29. some people to pound on it--implement test programs around it,
  30. use it within real programs--whatever.  The functions will
  31. be going into the MiscFindPanel class, and perhaps into Don
  32. Yacktman's MiscString class.
  33.  
  34. These functions (3 of them in the "module") implement literal
  35. pattern matching with options for case sensitivity and
  36. forward/reverse searching, as you'd expect, and are _very_
  37. fast (about as fast as Boyer-Moore with a fast skip loop)
  38. even with all the extra functionality that Boyer & Moore
  39. (or Hume & Sunday) never considered.  Simple estimates done
  40. on text sizes up to 100MB with a small (3 byte) pattern
  41. indicate that it scans between 2.0-8.8 MB per second (the
  42. larger the text size, the higher the apparent scan rate),
  43. and larger patterns result in even higher performance
  44. (generally).  (This was on an '040 NeXTCube.)
  45.  
  46. I want to know about any bugs or anything that manages to
  47. cause these functions to crash (think you can crash them with
  48. random pointers? Ha! You'll have to try harder than that.)
  49. I've done testing of my own, and some analyses on the
  50. algorithms, and have corrected all the problems I have found.
  51. Also, I've done all my testing on NeXT boxes; some testing
  52. on an Intel box or two would be very helpful.
  53.  
  54. Email me at kane@cs.purdue.edu if you are interested in
  55. trying to break these routines.  I'd prefer to non-NextMail
  56. them to you (its 7.5KB total), but other options will be
  57. considered.
  58.  
  59. Thanks,
  60. Christopher Kane
  61. kane@cs.purdue.edu